package io.renren.modules.user.service;

import io.renren.common.utils.R;
import io.renren.modules.feedback.entity.FeedbackinfosEntity;
import io.renren.modules.user.dao.UserinfosDao;
import io.renren.modules.user.entity.UserinfosEntity;
import io.renren.modules.vipuser.dao.VipinfosDao;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * 用户表
 * 
 * @author ÑîË§
 * @email 
 * @date 2018-10-18 15:06:56
 */
public interface UserinfosService {
	List<UserinfosEntity> queryDescList(Map<String, Object> map);

	//查询简单用户总数
	int queryDescTotal(Map<String, Object> map);

	//上传头像
	int uploadIcon(Map<String, Object> map);
	
	UserinfosEntity queryObject(String userinfoid);
	
	List<UserinfosEntity> queryList(Map<String, Object> map);
	
	int queryTotal(Map<String, Object> map);
	
	void save(UserinfosEntity userinfos);
	
	void update(UserinfosEntity userinfos);
	
	void delete(String userinfoid);
	
	void deleteBatch(String[] userinfoids);

	int isUserAccountRepetition(String userAccount);

	List<UserinfosEntity> queryUserByName(Map<String, Object> map);

	int queryUserByNameTotal(Map<String, Object> map);

	int isUserIdExist(String userinfoid);

	String login(String useraccount,String userpwd);

	UserinfosEntity queryUserinfo(String userinfoid);

	boolean reduceTheIntegral(String userinfoid,BigDecimal cull);

	UserinfosEntity queryUserByAccount(String userAccount);

	//判断用户不存在错误
	R judgeUserError(String userinfoid);

	void updateApiUser(UserinfosEntity entity);

	R judgeIsDelError(int code);

	R judgeIsVipError(int code);

	R judgeIslockedoutError(int code);

	R judgeIsUsergenderError(int code);

	boolean isVip(String userinfoid);

	UserinfosEntity queryPasswordInfo(String userinfoid);

	UserinfosEntity queryApiIntegralNumber(String userinfoid);
}
